#ifndef SSD_HW4_FASTA_PARSER_H_
#define SSD_HW4_FASTA_PARSER_H_

#include <fstream>
#include <string>
#include <map>
#include <iostream>
#include <algorithm>

namespace fasta_parser
{

class FastaParser
{
 public:
  explicit FastaParser(char const* filename);
  ~FastaParser();

  void GetNextSequenceFasta(std::pair<std::string, std::string>* sequence);
  void GetAllFastaSequencesPairs(std::map<std::string, std::string>* result);

 private:
  std::ifstream fasta;
};

} // namespace fasta_parser

#endif // SSD_HW4_FASTA_PARSER_H_